<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
<title>L2LB: Referência ao ficheiro netfilter.h</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
<link href="tabs.css" rel="stylesheet" type="text/css">
</head><body>
<!-- Gerado por Doxygen 1.5.6 -->
<div class="navigation" id="top">
  <div class="tabs">
    <ul>
      <li><a href="index.html"><span>Página&nbsp;principal</span></a></li>
      <li><a href="annotated.html"><span>Estruturas&nbsp;de&nbsp;dados</span></a></li>
      <li class="current"><a href="files.html"><span>Ficheiros</span></a></li>
    </ul>
  </div>
</div>
<div class="contents">
<h1>Referência ao ficheiro netfilter.h</h1>Arquivo responsável por interceptar as requisições usando a API Netfilter. <a href="#_details">Mais...</a>
<p>

<p>
<a href="netfilter_8h-source.html">Ir para o código fonte deste ficheiro.</a><table border="0" cellpadding="0" cellspacing="0">
<tr><td></td></tr>
<tr><td colspan="2"><br><h2>Funções</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">static unsigned int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="netfilter_8h.html#e197bbd3c720b235dff80a8abc7250dd">nlb_hook_in</a> (unsigned int hooknum, struct sk_buff **skb, const struct net_device *in, const struct net_device *out, int(*okfn)(struct sk_buff *))</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">NF_IP_LOCAL_IN hook.  <a href="#e197bbd3c720b235dff80a8abc7250dd"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">static int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="netfilter_8h.html#bf19d764f0af6d861e95cb83707589a7">nlb_netfilter_init</a> (void)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Inicializa a interceptação dos pacotes com o Netfilter.  <a href="#bf19d764f0af6d861e95cb83707589a7"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">static int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="netfilter_8h.html#dfb4739620e1a1d113735757982d0d7e">nlb_netfilter_exit</a> (void)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Interrompe a interceptação dos pacotes com o Netfilter.  <a href="#dfb4739620e1a1d113735757982d0d7e"></a><br></td></tr>
<tr><td colspan="2"><br><h2>Variáveis</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">static struct nf_hook_ops&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="netfilter_8h.html#8beaa7c9da49f7fa797b85a0feeda3f9">nlb_ops</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Estrtutra com informações necessárias para inicializar o uso do Netfilter.  <a href="#8beaa7c9da49f7fa797b85a0feeda3f9"></a><br></td></tr>
</table>
<hr><a name="_details"></a><h2>Descrição detalhada</h2>
Arquivo responsável por interceptar as requisições usando a API Netfilter. 
<p>

<p>Definido no ficheiro <a class="el" href="netfilter_8h-source.html">netfilter.h</a>.</p>
<hr><h2>Documentação das funções</h2>
<a class="anchor" name="e197bbd3c720b235dff80a8abc7250dd"></a><!-- doxytag: member="netfilter.h::nlb_hook_in" ref="e197bbd3c720b235dff80a8abc7250dd" args="(unsigned int hooknum, struct sk_buff **skb, const struct net_device *in, const struct net_device *out, int(*okfn)(struct sk_buff *))" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">static unsigned int nlb_hook_in           </td>
          <td>(</td>
          <td class="paramtype">unsigned int&nbsp;</td>
          <td class="paramname"> <em>hooknum</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">struct sk_buff **&nbsp;</td>
          <td class="paramname"> <em>skb</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const struct net_device *&nbsp;</td>
          <td class="paramname"> <em>in</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const struct net_device *&nbsp;</td>
          <td class="paramname"> <em>out</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int(*)(struct sk_buff *)&nbsp;</td>
          <td class="paramname"> <em>okfn</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
NF_IP_LOCAL_IN hook. 
<p>
Esta função intercepta todos os pacotes enviados ao servidor. Ela é responsável por filtrar os pacotes que não devem ser processados por este servidor e registrar as afinidades entre clientes e servidores. 
<p>Definido na linha <a class="el" href="netfilter_8h-source.html#l00015">15</a> do ficheiro <a class="el" href="netfilter_8h-source.html">netfilter.h</a>.</p>

<p>Referências <a class="el" href="cluster_8h-source.html#l00044">cluster::dev</a>, <a class="el" href="hash-afinidades_8h-source.html#l00165">hash_add()</a>, <a class="el" href="hash-afinidades_8h-source.html#l00209">hash_lookup()</a>, <a class="el" href="cluster_8h.html#1917b2709741dea7ce5cf6ea441686ed">my_cluster</a>, <a class="el" href="cluster_8h-source.html#l00040">cluster::my_node</a>, <a class="el" href="cluster_8h-source.html#l00014">cluster_node::next</a>, <a class="el" href="cluster_8h-source.html#l00041">cluster::next_serving</a>, <a class="el" href="hash-afinidades_8h-source.html#l00021">nlb_affinity::node</a> e <a class="el" href="cluster_8h-source.html#l00063">cluster::rwlock</a>.</p>

<p>Referenciado por <a class="el" href="netfilter_8h-source.html#l00069">nlb_netfilter_init()</a>.</p>

</div>
</div><p>
<a class="anchor" name="dfb4739620e1a1d113735757982d0d7e"></a><!-- doxytag: member="netfilter.h::nlb_netfilter_exit" ref="dfb4739620e1a1d113735757982d0d7e" args="(void)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">static int nlb_netfilter_exit           </td>
          <td>(</td>
          <td class="paramtype">void&nbsp;</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Interrompe a interceptação dos pacotes com o Netfilter. 
<p>

<p>Definido na linha <a class="el" href="netfilter_8h-source.html#l00084">84</a> do ficheiro <a class="el" href="netfilter_8h-source.html">netfilter.h</a>.</p>

<p>Referências <a class="el" href="netfilter_8h-source.html#l00064">nlb_ops</a>.</p>

<p>Referenciado por <a class="el" href="nlb-driver_8c-source.html#l00130">nlb_exit_module()</a>.</p>

</div>
</div><p>
<a class="anchor" name="bf19d764f0af6d861e95cb83707589a7"></a><!-- doxytag: member="netfilter.h::nlb_netfilter_init" ref="bf19d764f0af6d861e95cb83707589a7" args="(void)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">static int nlb_netfilter_init           </td>
          <td>(</td>
          <td class="paramtype">void&nbsp;</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Inicializa a interceptação dos pacotes com o Netfilter. 
<p>

<p>Definido na linha <a class="el" href="netfilter_8h-source.html#l00069">69</a> do ficheiro <a class="el" href="netfilter_8h-source.html">netfilter.h</a>.</p>

<p>Referências <a class="el" href="netfilter_8h-source.html#l00015">nlb_hook_in()</a> e <a class="el" href="netfilter_8h-source.html#l00064">nlb_ops</a>.</p>

<p>Referenciado por <a class="el" href="nlb-driver_8c-source.html#l00100">nlb_init_module()</a>.</p>

</div>
</div><p>
<hr><h2>Documentação das variáveis</h2>
<a class="anchor" name="8beaa7c9da49f7fa797b85a0feeda3f9"></a><!-- doxytag: member="netfilter.h::nlb_ops" ref="8beaa7c9da49f7fa797b85a0feeda3f9" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">struct nf_hook_ops <a class="el" href="netfilter_8h.html#8beaa7c9da49f7fa797b85a0feeda3f9">nlb_ops</a><code> [static]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Estrtutra com informações necessárias para inicializar o uso do Netfilter. 
<p>

<p>Definido na linha <a class="el" href="netfilter_8h-source.html#l00064">64</a> do ficheiro <a class="el" href="netfilter_8h-source.html">netfilter.h</a>.</p>

<p>Referenciado por <a class="el" href="netfilter_8h-source.html#l00084">nlb_netfilter_exit()</a> e <a class="el" href="netfilter_8h-source.html#l00069">nlb_netfilter_init()</a>.</p>

</div>
</div><p>
</div>
<hr size="1"><address style="text-align: right;"><small>Gerado em Wed Sep 10 23:05:56 2008 para L2LB por&nbsp;
<a href="http://www.doxygen.org/index.html">
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
</body>
</html>
